package com.geek.javase.ch17.work.tcpwork.tcp4;

import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;

/*
 *@Date 2025/11/4
 *@Author wangpeng
 *@Description
 * 需求4：服务端接收多条消息，服务端也可以发送多条消息；客户端可以发送多条消息，也可以接收多条消息；（一对一，非阻塞的现象） 打电话 畅聊
 * 解决办法：如果这里要进行非阻塞，将读写撤离。
 */
public class TCPServer {
    public static void main(String[] args) {
        System.out.println("-------服务器--------");
        ServerSocket ss = null;
        try{
            //创建服务器
            ss = new ServerSocket(8899);
            //接收客户端
            Socket s = ss.accept();
            System.out.println(s.getRemoteSocketAddress()+"已上线");

            //启动读线程
            new Thread(new ReadThread(s)).start();
            //启动写线程
            new Thread(new WriteThread(s)).start();
        }catch(Exception e){
            e.printStackTrace();
        }finally {
            if(ss!= null){
                try {
                    ss.close();
                } catch (IOException e) {
                    throw new RuntimeException(e);
                }
            }
        }
    }
}
